                    const {dimension,location} = player
                    const slots = ["offhand","mainhand","head","chest","legs","feet"]
                    const pInventory = player.getComponent(`inventory`).container
                    const pEquipment = player.getComponent("equipment_inventory")
                    const tInventory = corpse.getComponent(`inventory`).container
                    const tEquipment = corpse.getComponent("equipment_inventory")
                    const air =  new server.ItemStack("air")

                    slots.forEach(slot=>{
                        let tItem = tEquipment.getEquipment(slot)
                        let pItem = pEquipment.getEquipment(slot)
                        if(tItem){
                            if(!pItem){
                            
                                tEquipment.setEquipment(slot,air)
                                pEquipment.setEquipment(slot,tItem)
                                
                            }else{
                                let residue = pInventory.addItem(tItem)
                                if(residue){dimension.spawnItem(residue,location)}
                                
                            }
                        }
                    })

                    for (let i = 0; i < tInventory.size; i++) {
                        let item = tInventory.getItem(i)
                        
                        if(item){
                          tInventory.setItem(i,air)
                          let residue = pInventory.addItem(item)
                          if(residue){dimension.spawnItem(residue,location)}
                        }
                    }

                    corpse.triggerEvent(`despawn`)
                }